package com.zuorenke.model.po;

/**
 * @author Z.R.K
 * @description
 * @create 2019-04-12 17:57:13
 **/
public class ReportModelTeacher {
	// 年月
	private String reportMonth;
	// 学校
	private Long schoolId;
	// 老师
	private Long teacherId;
	// 科目
	private Long subjectId;
	// 应上课数
	private Integer needCnt;
	// 实际上课数
	private Integer doneCnt;
	// 有效备课数
	private Integer beikeCnt;
	// 课中讲解预习同时有激励
	private Integer beikeIncentiveCnt;
	// 点名次数
	private Integer callNum;
	// 考试次数
	private Integer examNum;
	// 分组讨论次数
	private Integer discuNum;
	// 快速问答次数
	private Integer quickNum;
	// 授权次数
	private Integer authedNum;
	// 鲜花次数
	private Integer flower;
	// 互动次数
	private Integer interactCnt;
	// 上课率
	private String doneRate;
	// 有效备课率
	private String beikeRate;
	// 平均互动次数
	private String avgInteractCnt;
	
	public String getReportMonth() {
		return reportMonth;
	}
	
	public void setReportMonth(String reportMonth) {
		this.reportMonth = reportMonth;
	}
	
	public Long getSchoolId() {
		return schoolId;
	}
	
	public void setSchoolId(Long schoolId) {
		this.schoolId = schoolId;
	}
	
	public Long getTeacherId() {
		return teacherId;
	}
	
	public void setTeacherId(Long teacherId) {
		this.teacherId = teacherId;
	}
	
	public Long getSubjectId() {
		return subjectId;
	}
	
	public void setSubjectId(Long subjectId) {
		this.subjectId = subjectId;
	}
	
	public Integer getNeedCnt() {
		return needCnt;
	}
	
	public void setNeedCnt(Integer needCnt) {
		this.needCnt = needCnt;
	}
	
	public Integer getDoneCnt() {
		return doneCnt;
	}
	
	public void setDoneCnt(Integer doneCnt) {
		this.doneCnt = doneCnt;
	}
	
	public Integer getBeikeCnt() {
		return beikeCnt;
	}
	
	public void setBeikeCnt(Integer beikeCnt) {
		this.beikeCnt = beikeCnt;
	}
	
	public Integer getBeikeIncentiveCnt() {
		return beikeIncentiveCnt;
	}
	
	public void setBeikeIncentiveCnt(Integer beikeIncentiveCnt) {
		this.beikeIncentiveCnt = beikeIncentiveCnt;
	}
	
	public Integer getCallNum() {
		return callNum;
	}
	
	public void setCallNum(Integer callNum) {
		this.callNum = callNum;
	}
	
	public Integer getExamNum() {
		return examNum;
	}
	
	public void setExamNum(Integer examNum) {
		this.examNum = examNum;
	}
	
	public Integer getDiscuNum() {
		return discuNum;
	}
	
	public void setDiscuNum(Integer discuNum) {
		this.discuNum = discuNum;
	}
	
	public Integer getQuickNum() {
		return quickNum;
	}
	
	public void setQuickNum(Integer quickNum) {
		this.quickNum = quickNum;
	}
	
	public Integer getAuthedNum() {
		return authedNum;
	}
	
	public void setAuthedNum(Integer authedNum) {
		this.authedNum = authedNum;
	}
	
	public Integer getFlower() {
		return flower;
	}
	
	public void setFlower(Integer flower) {
		this.flower = flower;
	}
	
	public String getDoneRate() {
		return doneRate;
	}
	
	public void setDoneRate(String doneRate) {
		this.doneRate = doneRate;
	}
	
	public String getBeikeRate() {
		return beikeRate;
	}
	
	public void setBeikeRate(String beikeRate) {
		this.beikeRate = beikeRate;
	}
	
	public Integer getInteractCnt() {
		return interactCnt;
	}
	
	public void setInteractCnt(Integer interactCnt) {
		this.interactCnt = interactCnt;
	}
	
	public String getAvgInteractCnt() {
		return avgInteractCnt;
	}
	
	public void setAvgInteractCnt(String avgInteractCnt) {
		this.avgInteractCnt = avgInteractCnt;
	}
	
	public void addNeedCnt(int offset) {
		needCnt += offset;
	}
	
	public void addDoneCnt(int offset) {
		doneCnt += offset;
	}
	
	public void addBeikeCnt(int offset) {
		beikeCnt += offset;
	}
	
	public void addInteractCnt(int offset) {
		interactCnt += offset;
	}
	
	public void addBeikeIncentiveCnt(int offset) {
		beikeIncentiveCnt += offset;
	}
	
	public void calRates() {
		int temp;
		doneRate = "0.00%";
		beikeRate = "0.00%";
		avgInteractCnt = "0.0";
		if(needCnt > 0){
			temp = (doneCnt * 10000) / needCnt;
			doneRate = (temp / 100) + "." + (temp % 100) + "%";
		}
		if(doneCnt > 0){
			temp = (interactCnt * 10) / doneCnt;
			avgInteractCnt = (temp / 10) + "." + (temp % 10);
			temp = (beikeCnt * 10000) / doneCnt;
			beikeRate = (temp / 100) + "." + (temp % 100) + "%";
		}
	}
}
